﻿<?php

/*
* Controlador: "valla_controller.php"
*
* Realizado por:
* 	Carlos Calvo
*/

// Inicializando el Mensaje
date_default_timezone_set("America/Caracas");
@session_start();

// Incluyendo los Modelos Asociados	
@include("../../../publico/librerias/adodb/adodb.inc.php");
//@include_once('../../modelos/ayuda/Lista.php');
//@include_once('../../modelos/ayuda/ListUtils.php');
//@include_once('../../modelos/reportes/reportes_senal.php');
//@include_once('../../modelos/reportes/AdaptadorDeSenal.php');
@include_once('../../modelos/ubicacion/estado.php');
@include_once('../../modelos/auditoria.php');
//@include_once('Creador.php');

if ( isset($_GET['resp']) ) {
	$resp 	= $_GET['resp'];
	if ( $resp != 1 ) {
		if ( isset ( $_SESSION['mensaje'] ) ) {
			unset($_SESSION['mensaje']);		
		}
	}
}

// Variables del Controlador
$user_login			= $_SESSION['USER_LOGIN'];			// Usuario que realiza la operación (AUDITORIA)
if ( isset($_SESSION['opcion']) ) {
	$opcion 		= $_SESSION['opcion'];				// Número de la operación (POST-CARGA)
}
if ( isset($_GET['op']) ) {
	$op 			= $_GET['op'];						// Número de la operación (PRE-CARGA)
} 

$error 				= false;							// Resultado de la operación en el modelo
$mensaje			= "";								// Mensaje de confirmación

// Variables del Modelo (FORMULARIO)
if ( isset($_POST['fecha_inicio']) ) {
	$_SESSION['fecha_inicio']	= $_POST['fecha_inicio'];
} else {
	$_SESSION['fecha_inicio'] 	= "";
}

if ( isset($_POST['ano']) ) {
	$ano = $_POST['ano'];
} else {
	$ano = "";
}
	
if ( isset($_POST['fecha_fin']) ) {
	$_SESSION['fecha_fin'] 		= $_POST['fecha_fin'];
} else {
	$_SESSION['fecha_fin']		= "";
}
	
if ( isset($_POST['reporte_op']) ) {
	$gen_o_esp					= $_POST['reporte_op'];
}


// =================================================================================================================
///////////////////////////////////////////// OPCIONES DE PRE-CARGA ////////////////////////////////////////////////
// =================================================================================================================

$estado 					= new Estado;
$resultado_modelo 			= $estado->consultar();
$_SESSION['lista_estados']	= $resultado_modelo;
$max_tipo					= 10;

if( isset($op) ) {
	
	switch ( $op ) {
					
		case 14: 	$_SESSION['clasificacion'] 	= "tipo senal";
					
					@include_once('../../modelos/tipo_senal.php');
					// Lista de los Tipos de Señales
					$tipo_senal			= new Tipo_senal;
					$lista_tipo_sen     = $tipo_senal->consultar();
					$_SESSION['lista_tipo_sen'] = $lista_tipo_sen;
					
					echo '<script>parent.location="../../vistas/reportes_senal/tipo_sen.php"</script>';
					break;
					
		case 15:	$_SESSION['clasificacion'] 	= "categoria senal";
					
					@include_once('../../modelos/categoria_senal.php');
					// Lista de las Categorias de las Señales
					$categoria_senal 	= new Categoria_senal;
					$lista_categ_sen	= $categoria_senal->consultar();
					$_SESSION['lista_categ_sen'] = $lista_categ_sen;
					
					echo '<script>parent.location="../../vistas/reportes_senal/categ_sen.php"</script>';
					break;
					
		case 16:	$_SESSION['clasificacion'] 	= "senal transito";
					
					@include_once('../../modelos/tipo_senal.php');
					// Lista de los Tipos de Señales
					$tipo_senal			= new Tipo_senal;
					$lista_tipo_sen     = $tipo_senal->consultar();
					$_SESSION['lista_tipo_sen'] = $lista_tipo_sen;
					
					@include_once('../../modelos/categoria_senal.php');
					// Lista de las Categorias de las Señales
					$categoria_senal 	= new Categoria_senal;
					$lista_categ_sen	= $categoria_senal->consultar();
					$_SESSION['lista_categ_sen'] = $lista_categ_sen;
					
					echo '<script>parent.location="../../vistas/reportes_senal/senal_tra.php"</script>';
					break;
					
		case 17:	$_SESSION['clasificacion'] 	= "ubicacion";
					
					echo '<script>parent.location="../../vistas/reportes_senal/ubica_sen.php"</script>';
					break;
					
		default: 	break;
	}
	
} else {

// =================================================================================================================
///////////////////////////////////////////// OPCIONES DE POST-CARGA ////////////////////////////////////////////////
// =================================================================================================================
	
	$creador 	= new Creador;
	$adaptador 	= new AdaptadorDeSenal;
	
	// =================================================================================================================
	// 	REPORTE DE SEÑALES 
	// =================================================================================================================
	
	if ( $opcion == 14 || $opcion == 15 || $opcion == 16 || $opcion == 17 ) {
			
			$clasificacion_obj 	= $creador->InstanciarSenal( $opcion );
			//$lista_tipos 		= $clasificacion_obj->consultar();
			$detalles 			= "";
			$fecha_inicio 		= $_SESSION['fecha_inicio'];
			$fecha_fin 			= $_SESSION['fecha_fin'];
			
		 	$_SESSION['rotulo'] 		= strtoupper($_SESSION['asunto']." POR ".$_SESSION['clasificacion']);
			$_SESSION['data_header'] 	= array( ucfirst($_SESSION['clasificacion']), ucfirst('Número total de '.$_SESSION['asunto']) );
			$_SESSION['data_alineado']	= array('L','C');
			
			if( $fecha_inicio != "" && $fecha_fin != "" ) {
				$_SESSION['periodo'] = "Del $fecha_inicio al $fecha_fin";
			} else {
				if( $ano != "" ) {
					$_SESSION['periodo'] = "Año: $ano";
					$fecha_inicio = $ano;
				} else {
					$fecha_inicio = date("d/m/Y");
					$_SESSION['periodo'] = "Del inicio al $fecha_inicio";
				}
			}
			
			if ( $gen_o_esp == 'G' ) {
				$_SESSION['detalles'] 	= "Estado: A NIVEL NACIONAL";
				$id_estado = null;
			} elseif ( $gen_o_esp == 'E' ) {
				list($id_estado,$nombre_estado) = explode( ",", $_POST['id_estado'] );
				$_SESSION['detalles'] 	= "Estado: ".strtoupper($nombre_estado);
			}
			
			$acc =  $adaptador->consultar( $gen_o_esp, $fecha_inicio, $fecha_fin, $id_estado );	
			
			$it = new Lista;
			$it->create( $acc );
			
			//$head = new Lista;
			//$head->create( $lista_tipos );
			
			//$lista = ListUtils::relist( $it, $head, 2 );
			//$max = $lista->getMax();
			
			$auditoria 	= new Auditoria;
			$auditoria->insertar( $opcion );
			
			$_SESSION['data'] 		= $it;
			
			if ( $max != -1 ) {
				$_SESSION['max_tipo'] = $max;
			}
			echo '<script>window.open("../../vistas/reportes_senal/pdf_senal.php");window.opener="anything";</script>';
			echo '<script>parent.location="../../vistas/ayuda/pre_controller.php?op='.$opcion.'"</script>';	
	}
}
?>